home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2007 November / PCWNOV07.iso / Software / Freeware / NSIS 2.29 / nsis-2.29-setup.exe / Examples / Library.nsi < prev    next >
Encoding:
Text File  |  2006-08-09  |  7.2 KB  |  116 lines

  1. # This example tests the compile time aspect of the Library macros
  2. # more than the runtime aspect. It is more of a syntax example,
  3. # rather than a usage example.
  4.  
  5. !include "Library.nsh"
  6.  
  7. Name "Library Test"
  8. OutFile "Library Test.exe"
  9.  
  10. InstallDir "$TEMP\Library Test"
  11.  
  12. Page directory
  13. Page instfiles
  14.  
  15. XPStyle on
  16.  
  17. !define TestDLL '"${NSISDIR}\Plugins\LangDLL.dll"'
  18.  
  19. Section
  20.  
  21. !insertmacro InstallLib DLL       NOTSHARED REBOOT_PROTECTED      ${TestDLL} $INSTDIR\test.dll $INSTDIR
  22. !insertmacro InstallLib DLL       NOTSHARED NOREBOOT_PROTECTED    ${TestDLL} $INSTDIR\test.dll $INSTDIR
  23. !insertmacro InstallLib DLL       NOTSHARED REBOOT_NOTPROTECTED   ${TestDLL} $INSTDIR\test.dll $INSTDIR
  24. !insertmacro InstallLib DLL       NOTSHARED NOREBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR
  25.  
  26. !insertmacro InstallLib REGDLL    NOTSHARED REBOOT_PROTECTED      ${TestDLL} $INSTDIR\test.dll $INSTDIR
  27. !insertmacro InstallLib REGDLL    NOTSHARED NOREBOOT_PROTECTED    ${TestDLL} $INSTDIR\test.dll $INSTDIR
  28. !insertmacro InstallLib REGDLL    NOTSHARED REBOOT_NOTPROTECTED   ${TestDLL} $INSTDIR\test.dll $INSTDIR
  29. !insertmacro InstallLib REGDLL    NOTSHARED NOREBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR
  30.  
  31. !insertmacro InstallLib TLB       NOTSHARED REBOOT_PROTECTED      ${TestDLL} $INSTDIR\test.dll $INSTDIR
  32. !insertmacro InstallLib TLB       NOTSHARED NOREBOOT_PROTECTED    ${TestDLL} $INSTDIR\test.dll $INSTDIR
  33. !insertmacro InstallLib TLB       NOTSHARED REBOOT_NOTPROTECTED   ${TestDLL} $INSTDIR\test.dll $INSTDIR
  34. !insertmacro InstallLib TLB       NOTSHARED NOREBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR
  35.  
  36. !insertmacro InstallLib REGDLLTLB NOTSHARED REBOOT_PROTECTED      ${TestDLL} $INSTDIR\test.dll $INSTDIR
  37. !insertmacro InstallLib REGDLLTLB NOTSHARED NOREBOOT_PROTECTED    ${TestDLL} $INSTDIR\test.dll $INSTDIR
  38. !insertmacro InstallLib REGDLLTLB NOTSHARED REBOOT_NOTPROTECTED   ${TestDLL} $INSTDIR\test.dll $INSTDIR
  39. !insertmacro InstallLib REGDLLTLB NOTSHARED NOREBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR
  40.  
  41. !insertmacro InstallLib DLL       $0        REBOOT_PROTECTED      ${TestDLL} $INSTDIR\test.dll $INSTDIR
  42. !insertmacro InstallLib DLL       $0        NOREBOOT_PROTECTED    ${TestDLL} $INSTDIR\test.dll $INSTDIR
  43. !insertmacro InstallLib DLL       $0        REBOOT_NOTPROTECTED   ${TestDLL} $INSTDIR\test.dll $INSTDIR
  44. !insertmacro InstallLib DLL       $0        NOREBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR
  45.  
  46. !insertmacro InstallLib REGDLL    $0        REBOOT_PROTECTED      ${TestDLL} $INSTDIR\test.dll $INSTDIR
  47. !insertmacro InstallLib REGDLL    $0        NOREBOOT_PROTECTED    ${TestDLL} $INSTDIR\test.dll $INSTDIR
  48. !insertmacro InstallLib REGDLL    $0        REBOOT_NOTPROTECTED   ${TestDLL} $INSTDIR\test.dll $INSTDIR
  49. !insertmacro InstallLib REGDLL    $0        NOREBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR
  50.  
  51. !insertmacro InstallLib TLB       $0        REBOOT_PROTECTED      ${TestDLL} $INSTDIR\test.dll $INSTDIR
  52. !insertmacro InstallLib TLB       $0        NOREBOOT_PROTECTED    ${TestDLL} $INSTDIR\test.dll $INSTDIR
  53. !insertmacro InstallLib TLB       $0        REBOOT_NOTPROTECTED   ${TestDLL} $INSTDIR\test.dll $INSTDIR
  54. !insertmacro InstallLib TLB       $0        NOREBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR
  55.  
  56. !insertmacro InstallLib REGDLLTLB $0        REBOOT_PROTECTED      ${TestDLL} $INSTDIR\test.dll $INSTDIR
  57. !insertmacro InstallLib REGDLLTLB $0        NOREBOOT_PROTECTED    ${TestDLL} $INSTDIR\test.dll $INSTDIR
  58. !insertmacro InstallLib REGDLLTLB $0        REBOOT_NOTPROTECTED   ${TestDLL} $INSTDIR\test.dll $INSTDIR
  59. !insertmacro InstallLib REGDLLTLB $0        NOREBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR
  60.  
  61. WriteUninstaller $INSTDIR\uninstall.exe
  62.  
  63. SectionEnd
  64.  
  65. Section uninstall
  66.  
  67. !insertmacro UninstallLib DLL       NOTSHARED NOREMOVE               $INSTDIR\test.dll
  68. !insertmacro UninstallLib DLL       NOTSHARED REBOOT_PROTECTED       $INSTDIR\test.dll
  69. !insertmacro UninstallLib DLL       NOTSHARED NOREBOOT_PROTECTED     $INSTDIR\test.dll
  70. !insertmacro UninstallLib DLL       NOTSHARED REBOOT_NOTPROTECTED    $INSTDIR\test.dll
  71. !insertmacro UninstallLib DLL       NOTSHARED NOREBOOT_NOTPROTECTED  $INSTDIR\test.dll
  72.  
  73. !insertmacro UninstallLib REGDLL    NOTSHARED NOREMOVE               $INSTDIR\test.dll
  74. !insertmacro UninstallLib REGDLL    NOTSHARED REBOOT_PROTECTED       $INSTDIR\test.dll
  75. !insertmacro UninstallLib REGDLL    NOTSHARED NOREBOOT_PROTECTED     $INSTDIR\test.dll
  76. !insertmacro UninstallLib REGDLL    NOTSHARED REBOOT_NOTPROTECTED    $INSTDIR\test.dll
  77. !insertmacro UninstallLib REGDLL    NOTSHARED NOREBOOT_NOTPROTECTED  $INSTDIR\test.dll
  78.  
  79. !insertmacro UninstallLib TLB       NOTSHARED NOREMOVE               $INSTDIR\test.dll
  80. !insertmacro UninstallLib TLB       NOTSHARED REBOOT_PROTECTED       $INSTDIR\test.dll
  81. !insertmacro UninstallLib TLB       NOTSHARED NOREBOOT_PROTECTED     $INSTDIR\test.dll
  82. !insertmacro UninstallLib TLB       NOTSHARED REBOOT_NOTPROTECTED    $INSTDIR\test.dll
  83. !insertmacro UninstallLib TLB       NOTSHARED NOREBOOT_NOTPROTECTED  $INSTDIR\test.dll
  84.  
  85. !insertmacro UninstallLib REGDLLTLB NOTSHARED NOREMOVE               $INSTDIR\test.dll
  86. !insertmacro UninstallLib REGDLLTLB NOTSHARED REBOOT_PROTECTED       $INSTDIR\test.dll
  87. !insertmacro UninstallLib REGDLLTLB NOTSHARED NOREBOOT_PROTECTED     $INSTDIR\test.dll
  88. !insertmacro UninstallLib REGDLLTLB NOTSHARED REBOOT_NOTPROTECTED    $INSTDIR\test.dll
  89. !insertmacro UninstallLib REGDLLTLB NOTSHARED NOREBOOT_NOTPROTECTED  $INSTDIR\test.dll
  90.  
  91. !insertmacro UninstallLib DLL       SHARED    NOREMOVE               $INSTDIR\test.dll
  92. !insertmacro UninstallLib DLL       SHARED    REBOOT_PROTECTED       $INSTDIR\test.dll
  93. !insertmacro UninstallLib DLL       SHARED    NOREBOOT_PROTECTED     $INSTDIR\test.dll
  94. !insertmacro UninstallLib DLL       SHARED    REBOOT_NOTPROTECTED    $INSTDIR\test.dll
  95. !insertmacro UninstallLib DLL       SHARED    NOREBOOT_NOTPROTECTED  $INSTDIR\test.dll
  96.  
  97. !insertmacro UninstallLib REGDLL    SHARED    NOREMOVE               $INSTDIR\test.dll
  98. !insertmacro UninstallLib REGDLL    SHARED    REBOOT_PROTECTED       $INSTDIR\test.dll
  99. !insertmacro UninstallLib REGDLL    SHARED    NOREBOOT_PROTECTED     $INSTDIR\test.dll
  100. !insertmacro UninstallLib REGDLL    SHARED    REBOOT_NOTPROTECTED    $INSTDIR\test.dll
  101. !insertmacro UninstallLib REGDLL    SHARED    NOREBOOT_NOTPROTECTED  $INSTDIR\test.dll
  102.  
  103. !insertmacro UninstallLib TLB       SHARED    NOREMOVE               $INSTDIR\test.dll
  104. !insertmacro UninstallLib TLB       SHARED    REBOOT_PROTECTED       $INSTDIR\test.dll
  105. !insertmacro UninstallLib TLB       SHARED    NOREBOOT_PROTECTED     $INSTDIR\test.dll
  106. !insertmacro UninstallLib TLB       SHARED    REBOOT_NOTPROTECTED    $INSTDIR\test.dll
  107. !insertmacro UninstallLib TLB       SHARED    NOREBOOT_NOTPROTECTED  $INSTDIR\test.dll
  108.  
  109. !insertmacro UninstallLib REGDLLTLB SHARED    NOREMOVE               $INSTDIR\test.dll
  110. !insertmacro UninstallLib REGDLLTLB SHARED    REBOOT_PROTECTED       $INSTDIR\test.dll
  111. !insertmacro UninstallLib REGDLLTLB SHARED    NOREBOOT_PROTECTED     $INSTDIR\test.dll
  112. !insertmacro UninstallLib REGDLLTLB SHARED    REBOOT_NOTPROTECTED    $INSTDIR\test.dll
  113. !insertmacro UninstallLib REGDLLTLB SHARED    NOREBOOT_NOTPROTECTED  $INSTDIR\test.dll
  114.  
  115. SectionEnd
  116.